home *** CD-ROM | disk | FTP | other *** search
/ Magnum One / Magnum One (Mid-American Digital) (Disc Manufacturing).iso / d1 / dosres.arc / DOSRES.TXT next >
Text File  |  1988-11-29  |  8KB  |  198 lines

  1.                           RESIDENT COMMAND INTERPRETER
  2.  
  3.                                        BY
  4.                                   JOHN CHAPMAN
  5.                                844 S. MADISON ST. 
  6.                             HINSDALE, ILLINOIS 60521
  7.  
  8.                              COMPUSERV ID 70205,1217
  9.  
  10.  
  11.         DISCLAIMER
  12.  
  13.         THIS  MODIFICATION IS PROVIDED WITHOUT WARRANTY OF ANY KIND.  THE 
  14.         AUTHOR  ASSUMES NO LIABILITY FOR FAILURE OF THIS CODE TO  PERFORM 
  15.         IN  ANY  ENVIRONMENT.  THE  USER IS  COMPLETELY  RESPONSIBLE  FOR 
  16.         DETERMINING   THE  APPLICABILITY  OF  THIS  MODIFICATION   TO   A 
  17.         PARTICULAR ENVIRONMENT.  
  18.  
  19.            
  20.         LIMITATIONS
  21.  
  22.         THIS MODIFICATION CAUSES THE TRANSIENT PORTION OF COMMAND.COM  TO 
  23.         BE  MADE RESIDENT AT SYSTEM IPL.   RE-BOOTING THE SYSTEM WITH  AN 
  24.         UNMODIFIED   COMMAND.COM   IS  THE  ONLY  WAY  TO   REMOVE   THIS 
  25.         MODIFICATION.
  26.  
  27.         THIS MODIFICATION ALTERS THE STARTING SEGMENT [PARAGRAPH] ADDRESS 
  28.         AVAILABLE  TO PROGRAMS,  LOWERING THE AMOUNT OF STORAGE AVAILABLE 
  29.         BY 4288 BYTES [FOR PC/DOS 1.1 WITH A NORMAL LOAD SEGMENT  ADDRESS 
  30.         OF  02C1.   THE  STARTING SEGMENT OF COMMAND.COM CAN BE FOUND  AT 
  31.         LOCATION 0000:9E, AND SHOULD DISPLAY [DEBUG] AS 
  32.  
  33.         0000:009E 2C 01
  34.  
  35.                                                               PAGE 1
  36.  
  37.          
  38.         THIS  SET  OF  TWO  DEBUG SCRIPTS WILL  ALTER  THE  IBM  PERSONAL 
  39.         COMPUTER DOS COMMAND INTERPRETER (COMMAND.COM) TO REMAIN ENTIRELY 
  40.         RESIDENT,  RATHER THAN BE HALF RESIDENT AND HALF  TRANSIENT.  THE 
  41.         WHOLE PURPOSE OF THIS MODIFICATION IS TO SUPPRESS 99% OF THE 
  42.         OCCURRANCES  OF THE REFRESH OF THE TRANSIENT PORTION.  THIS  WILL 
  43.         REMOVE  THE  REQUIREMENT  TO  ALWAYS HAVE A  DISK  WITH  A  VALID 
  44.         COMMAND.COM  IN DRIVE A.  THIS CHANGE HAS BEEN ESPECIALLY  USEFUL 
  45.         WITH   MULTIPLE   DISKCOPY  TYPE  ACTIVITIES,   AND  WITH   THOSE 
  46.         APPLICATION PACKAGES WHICH USE ALL OF MEMORY,  INCLUDING THE  TOP 
  47.         4880 BYTES WHERE THE TRANSIENT COMMAND.COM RESIDES.
  48.  
  49.         **NOTE**
  50.  
  51.         WE   HAVE  EXPERIENCED  A  LIMITED  NUMBER  OF  CASES  WHERE  THE 
  52.         REFRESHABLE,  OR  TRANSIENT PORTION OF  COMMAND.COM,   WHICH  NOW 
  53.         RESIDES IN LOW MEMORY,  HAS BEEN DAMAGED.  THIS DAMAGE CAUSES THE 
  54.         CHECKSUM CODE TO REFRESH THE TRANSIENT PORTION FROM DISK.  IF YOU 
  55.         EXPERIENCE  REPEATED  OCCURANCES OF THIS,  SEE PART TWO  OF  THIS 
  56.         MODIFICATION.
  57.  
  58.  
  59.                                                               PAGE 2
  60.                                       PART ONE  
  61.         BEGIN  INSTALLATION  BY COPYING THE "MODEL" PC/DOS  DISKETTE  YOU 
  62.         WISH TO MODIFY ONTO A FRESH DISKETTE USING DISKCOPY.   IF YOU ARE 
  63.         PRODUCING  A  SYSTEM  DISKETTE THAT WILL NOT HAVE A COPY  OF  THE 
  64.         DEBUG  COMMAND  ON  IT,  YOU  MUST HAVE  A  DISKETTE  WITH  DEBUG 
  65.         AVAILABLE.
  66.  
  67.         PART ONE: DEBUG SCRIPT  
  68.         DEBUG COMMAND.COM <CR>
  69.         -D,44D,450 <CR>
  70.         XXXX:44D 04 01 00
  71.         XXXX:450 00
  72.         -D,3ED,3EE <CR>
  73.         XXXX:3ED 01 00
  74.  
  75.         -D,0460,0479 <CR>
  76.         XXXX:0460 46 00 A3 03 01 A1 02 00-8C 1E 05 01 A3 52 04 2D
  77.         -D,10D3,10D7
  78.         XXXX:10D3 8C C8 05 C0 00
  79.         **VERIFY THE ABOVE DISPLAYED BYTES.  THE CONTENTS OF THIS DISPLAY 
  80.         MUST  MATCH EXACTLY.  IF ANY DISCREPANCIES ARE DETECTED,  DO  NOT 
  81.         INSTALL ANY OF THE PATCH WHICH FOLLOWS.
  82.  
  83.         -E,3ED,00 <CR>
  84.         -E,44F,54,00 <CR>
  85.         -E,103,61,01 <CR>
  86.         -E,45F,01,06,4F,04,01,06,03,01 <CR>
  87.         -E,467,8C,1E,05,01,A1,02,00 <CR>
  88.         -E,46E,A3,52,04,90,90,90,90,90 <CR>
  89.         -E,479,90,90,90 <CR>
  90.         -E,658,A1,02,00,2B,06,9F,0F <CR>
  91.         -E,65F,BA,10,00,F7,E2,90,71,03 <CR>
  92.         -E,10D3,A1,02,00,2D,02,00 <CR> 
  93.  
  94.         **THE ABOVE ENTERS THE FIRST SECTION OF THE PATCH.
  95.                                                               PAGE 3
  96.                                 PART ONE (CONTINUED)   
  97.  
  98.         NEXT, WE WILL DISPLAY THE MODIFIED CODE, TO VERIFY THAT THE PATCH 
  99.         WAS CORRECTLY INSTALLED:
  100.  
  101.         -U,045D,047B <CR>
  102.              MOV  AX,CS   
  103.              ADD  [044F],AX
  104.              ADD  [0103],AX 
  105.              MOV  [0105],DS
  106.              MOV  AX,[0002]
  107.              MOV  [0452],AX
  108.              NOP
  109.              NOP
  110.              NOP
  111.              NOP
  112.              NOP
  113.              CALL 0294
  114.              NOP
  115.              NOP 
  116.              NOP
  117.         
  118.         -U,0656,0665 <CR>
  119.              INT  21
  120.              MOV  AX,[0002]
  121.              SUB  AX,[0F9F]
  122.              MOV  DX,0010
  123.              MUL  AX,DX
  124.              NOP        
  125.              JNO  066A
  126.         BE SURE THAT THE ABOVE MATCHES THE
  127.         DISPLAY  PRODUCED  BY  "UNASSEMBLE" ON YOUR MACHINE.
  128.         -W <CR>
  129.          WRITING 135F BYTES  
  130.         -Q <CR>
  131.         A>  ***WHEN THE "A" PROMPT APPEARS YOU ARE READY TO REBOOT***
  132.  
  133.         YOU SHOULD USE THIS MODIFICATION WITH ONLY THIS PORTION INSTALLED 
  134.         UNLESS YOU ENCOUNTER ANY OF THE PROBLEMS DESCRIBED IN THE  SECOND 
  135.         SECTION.
  136.         PLEASE  DO  NOT INSTALL PART TWO OF THIS MODIFICATION UNLESS  YOU 
  137.         EXPERIENCE A PROBLEM USING PART ONE BY ITSELF. 
  138.  
  139.  
  140.                                                               PAGE 4
  141.           PART TWO: REFRESH SUPPRESSION
  142.  
  143.         WE HAVE EXPERIENCED A LIMITED NUMBER OF CASES WHERE THE 'REFRESH' 
  144.         OF THE TRANSIENT PORTION OF COMMAND.COM, WHICH NOW RESIDES IN LOW 
  145.         MEMORY,  HAS BEEN DAMAGED.   THIS DAMAGE CAUSES THE CHECKSUM CODE 
  146.         TO REFRESH THE TRANSIENT PORTION FROM DISK.
  147.         THE  CHANGES  PROVIDED  IN PART  TWO  ALLOW  SPECIFIC  PROTECTION 
  148.         AGAINST  THE DAMAGE POSSIBLE IN AN ENVIRONMENT WHERE A PROGRAM[S] 
  149.         HAS BEEN WRITTEN WITH SPECIFIC ARCHITECTURE DEPENDENCIES.
  150.  
  151.         IF, AND ONLY IF, YOU RECEIVE THE  "INSERT DOS DISK IN DRIVE A AND 
  152.         STRIKE  ANY KEY WHEN READY"  MESSAGE,  OR SEE THAT AN UNSOLICITED 
  153.         I/O 
  154.         HAS OCCURRED ON THE DEFAULT DRIVE DURING PROGRAM EXECUTION..
  155.  
  156.         AND ONE OF THESE OCCURANCES IS FOLLOWED BY A SYSTEM "HANG" 
  157.  
  158.         IF IT BECOMES NECESSARY TO APPLY PART TWO, PLEASE DOCUMENT TO THE 
  159.         AUTHOR  THE  CIRCUMSTANCES THAT CAUSED THE  HANG,  INCLUDING,  IF 
  160.         POSSIBLE,  THE  [SOURCE]  PROGRAM  THAT  WAS  EXECUTING.  IF  THE 
  161.         SOFTWARE YOU WERE USING IS PROPRIETARY, PLEASE INDICATE:
  162.         A) THE PACKAGE NAME, VENDOR, ETC.
  163.         B) THE MEMORY SIZE ON YOUR MACHINE, AND
  164.         C)  THE  LANGUAGE USED TO PRODUCE THE PROGRAM  WHICH  CAUSED  THE 
  165.         MODIFIED COMMAND INTERPRETER  TO "HANG".
  166.  
  167.         **PLEASE  REPORT  BUGS**   TO THE ADDRESS/ID SHOWN ON  THE  FIRST 
  168.         PAGE.
  169.  
  170.                                                               PAGE 5
  171.          PART TWO: DEBUG SCRIPT 
  172.  
  173.         DEBUG COMMAND.COM  <CR>
  174.         -D,111B,111E <CR>
  175.         XXXX:111B 3B D1 77 51
  176.         -D,1134,1137 <CR>
  177.         XXXX:1136 3B D1 77 38
  178.  
  179.         AS BEFORE, BE SURE THAT THE DISPLAYS ABOVE MATCH YOUR SYSTEM, AND 
  180.         DO NOT ENTER THE PATCH BELOW UNLESS EACH BYTE VERIFIES.
  181.  
  182.         -E,023A,90,90 <CR>
  183.         -E,0242,90,90 <CR>
  184.         -E,0246,90,90 <CR>
  185.         -E,111D,90,90 <CR>
  186.         -E,1136,90,90 <CR>
  187.  
  188.         -W <CR> 
  189.          WRITING 135F BYTES
  190.         -Q <CR>
  191.         A>  *** REBOOT AT THIS POINT ***
  192.  
  193. 1136,90,90 <CR>
  194.  
  195.         -W <CR> 
  196.          WRITING 135F BYTES
  197.         -Q <CR>
  198.